home *** CD-ROM | disk | FTP | other *** search
- #!/usr/bin/python
- #
- # Collect information about a gcc internal compiler exception (ICE).
- #
- # Copyright (c) 2007 Canonical Ltd.
- # Author: Martin Pitt <martin.pitt@ubuntu.com>
- #
- # This program is free software; you can redistribute it and/or modify it
- # under the terms of the GNU General Public License as published by the
- # Free Software Foundation; either version 2 of the License, or (at your
- # option) any later version. See http://www.gnu.org/copyleft/gpl.html for
- # the full text of the license.
-
- import sys
- import apport, apport.fileutils
-
- # parse command line arguments
- if len(sys.argv) != 3:
- print >> sys.stderr, 'Usage:', sys.argv[0], '<executable name> <gcc -E output file>'
- print >> sys.stderr, 'If "-" is specified as second argument, the preprocessed source is read from stdin.'
- sys.exit(1)
-
- (exename, sourcefile) = sys.argv[1:]
-
- # create report
- pr = apport.Report()
- pr['ExecutablePath'] = exename
- if sourcefile == '-':
- pr['PreprocessedSource'] = (sys.stdin, False)
- else:
- pr['PreprocessedSource'] = (open(sourcefile), False)
-
- # write report
- pr.write(open(apport.fileutils.make_report_path(pr), 'w'))
-